import { request } from "../../request/request";

Page({

    /**
     * 页面的初始数据
     */
    data: {
        // 商品对象
        goodsObj: {}
    },

    /**
     * 生命周期函数--监听页面加载
     */
    onLoad: function(options) {
        const { goods_id } = options;
        console.log(goods_id)
        this.getGoodsDetail(goods_id)
    },
    // 获取商品详情数据
    getGoodsDetail(goods_id) {
        request({ url: '/goods/detail', data: { goods_id } })
            .then((result) => {
                console.log(result)
                const goodsObj = result.data.message;
                this.setData({
                    goodsObj: {
                        goods_name: goodsObj.goods_name,
                        goods_price: goodsObj.goods_price,
                        //iphone 部分手机 不识别 webp图片格式
                        //临时修改
                        goods_introduce: goodsObj.goods_introduce.replace('/\.webp/g', '.jpg'),
                        pics: goodsObj.pics,
                        goods_id: goodsObj.goods_id
                    }
                })
            })
    },
    // 点击图片预览
    handlePreviewImage(e) {
        // console.log(e)
        const current = e.currentTarget.dataset.url;
        const urls = this.data.goodsObj.pics.map(v => v.pics_mid);
        wx.previewImage({
            current: current, // 当前显示图片的链接，不填则默认为 urls 的第一张
            urls: urls
        })
    },
    //加入购物车
    // 1绑定点击事件
    handleCarAdd() {
        // 2获取缓存中的购物车数据 数组格式
        let car = wx.getStorageSync('car') || [];
        // 3先判断 当前商品是否存在缓存中
        let index = car.findIndex(v => v.goods_id === this.data.goodsObj.goods_id)
        if (index === -1) {
            // 5不存在于购物车的数组 则添加到缓存
            this.goodsObj.num = 1;
            car.push(this.goodsObj)
        } else {
            // 4已存在 修改商品数量
            car[index].num++;
        }
        wx.setStorageSync('car', car);
        // 6弹窗提示
        wx.showToast({
            title: '加入成功',
            icon: 'success',
            // 防止用户手抖 不断点击按钮
            mask: true
        })
    }

})